nethackfandomcom-20200214-history
Source:SLASH'EM 0.0.7E7F2/prxyclnt.h
Below is the full text to prxyclnt.h from the source code of SLASH'EM 0.0.7E7F2. To link to a particular line, write [[SLASH'EM 0.0.7E7F2/prxyclnt.h#line123]], for example. The latest source code for vanilla NetHack is at Source code. 1. /* $Id: prxyclnt.h,v 1.11 2004/04/19 06:56:41 j_ali Exp $ */ 2. /* Copyright © Slash'EM Development Team 2002-2004 */ 3. /* NetHack may be freely redistributed. See license for details. */ 4. 5. #ifndef PRXYCLNT_H 6. #define PRXYCLNT_H 7. 8. #define PROXY_CLNT_SYNCHRONOUS 1 9. 10. extern short *proxy_glyph2tile; 11. 12. struct proxy_tilemap_entry { 13. unsigned int tile; 14. unsigned int refs; 15. unsigned int no_descs; 16. char **descs; 17. }; 18. 19. struct proxy_tilemap { 20. unsigned int no_entries; /* One tile may have several entries */ 21. unsigned int no_tiles; 22. unsigned int max_entries; /* No. allocted entries */ 23. struct proxy_tilemap_entry *entries; 24. }; 25. 26. #define PROXY_LEVEL_MAPPING 0 27. #define PROXY_LEVEL_FLAGS 1 28. #define PROXY_LEVEL_SUBMAPPING 2 29. #define PROXY_LEVEL_GLYPH 3 30. #define PROXY_LEVEL_BASED_MAPPING 4 31. #define PROXY_LEVEL_BASED_SUBMAPPING 5 32. #define PROXY_LEVEL_BASED_GLYPH 6 33. #define PROXY_MAX_NO_LEVELS 7 34. 35. struct proxy_glyph_mapping { 36. unsigned long rgbsym; 37. int alt_glyph; 38. unsigned int no_descs; 39. const char **descs; 40. }; 41. 42. struct proxy_glyph_map_info { 43. struct proxy_glyph_mapping current; 44. struct proxycb_get_glyph_mapping_res *glyph_map; 45. int mi, smi, gi, bsmi, bgi; 46. const char *descsPROXY_MAX_NO_LEVELS; 47. }; 48. 49. struct window_ext_procs { 50. const char *name; 51. int FDECL((*winext_init_nhwindows), (int *, char **, char ***)); 52. int FDECL((*winext_player_selection), (int *, int *, int *, int *)); 53. char *NDECL((*winext_askname)); 54. void NDECL((*winext_get_nh_event)) ; 55. void FDECL((*winext_exit_nhwindows), (const char *)); 56. void FDECL((*winext_suspend_nhwindows), (const char *)); 57. void NDECL((*winext_resume_nhwindows)); 58. int FDECL((*winext_create_nhwindow), (int)); 59. void FDECL((*winext_clear_nhwindow), (int, int, int, int)); 60. void FDECL((*winext_display_nhwindow), (int, BOOLEAN_P)); 61. void FDECL((*winext_destroy_nhwindow), (int)); 62. void FDECL((*winext_curs), (int,int,int)); 63. void FDECL((*winext_putstr), (int, int, const char *)); 64. void FDECL((*winext_display_file), (int)); 65. void FDECL((*winext_start_menu), (int)); 66. void FDECL((*winext_add_menu), (int,int,int, 67. CHAR_P,CHAR_P,int,const char *, BOOLEAN_P)); 68. void FDECL((*winext_end_menu), (int, const char *)); 69. int FDECL((*winext_select_menu), (int, int, struct proxy_mi **)); 70. int FDECL((*winext_message_menu), (int,int,const char *)); 71. void NDECL((*winext_update_inventory)); 72. void NDECL((*winext_mark_synch)); 73. void NDECL((*winext_wait_synch)); 74. void FDECL((*winext_cliparound), (int, int)); 75. void FDECL((*winext_update_positionbar), (char *)); 76. void FDECL((*winext_print_glyph), (int,int,int,int)); 77. void FDECL((*winext_raw_print), (const char *)); 78. void FDECL((*winext_raw_print_bold), (const char *)); 79. int NDECL((*winext_nhgetch)); 80. int FDECL((*winext_nh_poskey), (int *, int *, int *)); 81. void NDECL((*winext_nhbell)); 82. int NDECL((*winext_doprev_message)); 83. char FDECL((*winext_yn_function), (const char *, const char *, 84. CHAR_P, int *)); 85. char *FDECL((*winext_getlin), (const char *)); 86. int NDECL((*winext_get_ext_cmd)); 87. void FDECL((*winext_number_pad), (int)); 88. void NDECL((*winext_delay_output)); 89. void FDECL((*winext_change_color), (int, long, int)); 90. void FDECL((*winext_change_background), (int)); 91. int FDECL((*winext_set_font_name), (int, char *)); 92. char *NDECL((*winext_get_color_string)); 93. void NDECL((*winext_start_screen)); 94. void NDECL((*winext_end_screen)); 95. int FDECL((*winext_outrip), (int, char *)); 96. void FDECL((*winext_preference_update), (const char *, const char *)); 97. void FDECL((*winext_status), (int, int, const char **)); 98. void FDECL((*winext_print_glyph_layered), (int, int, 99. struct proxy_glyph_layer *)); 100. void FDECL((*winext_send_config_file), (int)); 101. }; 102. 103. typedef void FDECL((*proxy_clnt_errhandler), (const char *)); 104. typedef int FDECL((*proxy_clnt_authhandler), (unsigned long)); 105. 106. /* ### proxysvc.c ### */ 107. 108. extern void proxy_svc_set_ext_procs(void (*)(void), struct window_ext_procs *); 109. extern char *win_proxy_clnt_gettag(const char *tag); 110. extern void win_proxy_clnt_set_flags(unsigned long mask, unsigned long value); 111. #ifdef NHXDR_H 112. extern int win_proxy_clnt_log_open(nhext_io_func func, void *handle); 113. extern int win_proxy_clnt_init(nhext_io_func, void *, nhext_io_func, void *); 114. #endif 115. extern int win_proxy_clnt_iteration(void); 116. extern char *win_proxy_clnt_get_failed_packet(int *); 117. extern char *win_proxy_clnt_get_extension(const char *name, const char *min_ver, const char *next_ver, unsigned short *idp); 118. extern proxy_clnt_errhandler proxy_clnt_set_errhandler( 119. proxy_clnt_errhandler new); 120. extern void proxy_clnt_error(const char *fmt, ...); 121. extern proxy_clnt_authhandler proxy_clnt_set_authhandler( 122. proxy_clnt_authhandler new); 123. 124. /* ### prxymap.c ### */ 125. 126. extern struct proxy_glyph_mapping *proxy_glyph_map_first( 127. struct proxy_glyph_map_info *, struct proxycb_get_glyph_mapping_res *); 128. extern struct proxy_glyph_mapping *proxy_glyph_map_next( 129. struct proxy_glyph_map_info *); 130. extern void proxy_glyph_map_close(struct proxy_glyph_map_info *); 131. extern unsigned int proxy_glyph_map_get_length( 132. struct proxycb_get_glyph_mapping_res *); 133. 134. /* ### prxytile.c ### */ 135. 136. extern struct proxy_tilemap *proxy_new_tilemap(void); 137. extern int proxy_load_tilemap_line(struct proxy_tilemap *map, const char *line); 138. extern struct proxy_tilemap *proxy_load_tilemap(int, void (*pulse)(), 139. void *pulse_data); 140. extern void proxy_free_tilemap(struct proxy_tilemap *); 141. extern short * proxy_map_glyph2tile( 142. struct proxycb_get_glyph_mapping_res *glyph_map, 143. struct proxy_tilemap *, void (*pulse)(), void *pulse_data); 144. 145. /* ### prxychar.c ### */ 146. 147. extern long *proxy_map_glyph2char(struct proxycb_get_glyph_mapping_res *); 148. 149. /* ### prxyconn.c ### */ 150. 151. extern void proxy_exit_client_services(void); 152. #ifdef NHXDR_H 153. extern int proxy_init_client_services(nhext_io_func read_f, 154. void *read_h, nhext_io_func write_f, void *write_h); 155. #endif 156. extern void proxy_start_client_services(void); 157. extern int proxy_connect( 158. char *protocol, char *address, int *argcp, char **argv); 159. 160. #endif /* PRXYCLNT_H */ prxyclnt.h